Entertainment system, entertainment apparatus, recording medium, and program

ABSTRACT

An entertainment system has a destruction displaying unit including a damage applying object processing unit for rendering an object (damage applying object) such as a robot carrying a principal character, a monster as a target, or bullets or shells shot from a weapon, which applies damage to a background object, a destruction determining unit for determining whether the background object is to be destroyed or not based on the positional relationship between the damage applying object and the background object, a background object processing unit for rendering the background object as it is being destroyed, and an image displaying unit for outputting image data rendered and stored in a frame buffer to a display monitor to display a corresponding image on the display screen of the display monitor.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to an entertainment system havingat least one manual controller connected to an entertainment apparatuswhich executes various programs, for entering control requests from theuser into the entertainment apparatus, an entertainment apparatus whichexecutes various programs, a recording medium storing a program and datathat are used by the entertainment system, and a program itself.

[0003] 2. Description of the Related Art

[0004] Some entertainment systems including entertainment apparatus suchas video game machines display video game images based on video gamedata stored in a recording medium such as a CD-ROM or the like on thedisplay screen of a television receiver while allowing the user or gameplayer to play the video game with commands entered via a manualcontroller.

[0005] In those entertainment systems, the entertainment apparatus andthe manual controller are usually connected to each other by a serialinterface. When a clock signal is supplied from the entertainmentapparatus to the manual controller, the manual controller sends keyswitch information based on the user's control entries in synchronismwith the clock signal.

[0006] Recently developed manual controllers incorporate a vibrationgenerating means for applying vibrations to the user based on a requestfrom an external apparatus such as an entertainment apparatus, forexample. While a video game is in progress, the vibration generatingmeans applies various different kinds of vibrations to the user inresponse to user's different control entries.

[0007] Some video games include shooting games and combat games in whicha principal character attempts to knock down another principal object asan opponent using a weapon or part of the body of the principalcharacter.

[0008] In such video games, the primary goal to be achieved is for theuser or game player to control the principal character to beat theopponent. Therefore, even when the battle between the principalcharacter and the opponent develops into various phases, the backgroundthat is not directly related to the principal character's achievementsusually remains unchanged. For example, even when bullets or shells shotfrom the principal character's weapon hit a displayed object other thanthe opponent, the image of the hit object remains the same, and evenwhen a heavy robot falls onto a displayed ground, the image of thedisplayed ground does not change at all.

[0009] Insofar as the user concentrates on controlling the principalcharacter to defeat the opponent when the user initially tries to becomeaccustomed to the video game, no problem arises out of the aboveunchanged image details. However, as the user becomes more skilled toplay the video game and is able to pay more attention to the displayedbackground while engaging in the combat, the user tends to lose interestin the video game and find the video game boring by discovering thatnothing changes in the background during the battle even when the battleis highly intensive.

[0010] In other video games, the user controls a robot or a vehiclewhich is displayed to shoot a monster or another robot which is alsodisplayed. The user uses a first joystick to control the robot or thevehicle, and uses a second joystick to move a sight.

[0011] The viewpoint as seen from the user is changed when the usermoves the robot or the vehicle with the first joystick. Therefore, evenwhen the user has aimed correctly at the target with the secondjoystick, the sight is liable to deviate greatly from the target as theviewpoint is changed by the first joystick. Therefore, the user isunable to aim at the target quickly.

[0012] Furthermore, some shooting or combat video games display a radarindicating the position of the opponent at a corner of the displayedview, and the user finds it awkward to see the radar thus displayed.

SUMMARY OF THE INVENTION

[0013] It is therefore an object of the present invention to provide anentertainment system and a recording medium which display realisticimages in video games that are played for the purpose of beating theopponent, by changing the displayed background depending on combatdetails.

[0014] Another object of the present invention is to provide anentertainment system, an entertainment apparatus, a recording medium,and a program which are capable of changing the viewpoint depending onthe direction in which the sight is moved, allowing the user toindependently control a displayed robot and move a sight while changingthe viewpoint, for example, so that the user can make better controlactions in shooting games, for example.

[0015] According to an aspect of the present invention, an entertainmentsystem comprises an entertainment apparatus for executing variousprograms, at least one manual controller for entering control requestsfrom the user into the entertainment apparatus, a display unit fordisplaying images outputted from the entertainment apparatus, anddestruction displaying means for determining whether a background objectwhich is being displayed on the display unit is destroyed or not basedon positional information of the displayed background object andpositional information of a damage applying object, and displaying thebackground object in a destroyed sequence if the background object hasbeen determined as being destroyed.

[0016] According to another aspect of the present invention, anentertainment apparatus for connection to a manual controller foroutputting a control request from the user, and a display unit fordisplaying images, comprises destruction displaying means fordetermining whether a background object which is being displayed on thedisplay unit is destroyed or not based on positional information of thedisplayed background object and positional information of a damageapplying object, and displaying the background object in a destroyedsequence if the background object has been determined as beingdestroyed.

[0017] According to still another aspect of the present invention, thereis provided a recording medium storing a program and data for use in anentertainment system having an entertainment apparatus for executingvarious programs, at least one manual controller for entering controlrequests from the user into the entertainment apparatus, and a displayunit for displaying images outputted from the entertainment apparatus,the program comprising the steps of determining whether a backgroundobject which is being displayed on the display unit is destroyed or notbased on positional information of the displayed background object andpositional information of a damage applying object, and displaying thebackground object in a destroyed sequence if the background object hasbeen determined as being destroyed.

[0018] According to yet another aspect of the present invention, thereis provided a program readable and executable by a computer, for use inan entertainment system having an entertainment apparatus for executingvarious programs, at least one manual controller for entering controlrequests from the user into the entertainment apparatus, and a displayunit for displaying images outputted from the entertainment apparatus,the program comprising the steps of determining whether a backgroundobject which is being displayed on the display unit is destroyed or notbased on positional information of the displayed background object andpositional information of a damage applying object, and displaying thebackground object in a destroyed sequence if the background object hasbeen determined as being destroyed.

[0019] The damage applying object may be bullets or shells shot from aweapon, a principal object as a principal character, or a principalobject as an opponent such as a monster. The background object may be abuilding, a road, a railroad, an automobile, or a bridge which can bedestroyed by a monster.

[0020] When the damage applying object hits the background object, thebackground object is determined to be destroyed, and displayed in adestroyed sequence. For example, when a monster hits a building, thebuilding is displayed as collapsing, and when a heavy robot is landed onthe ground, a road is displayed as being concaved.

[0021] Therefore, even if the primary goal to be achieved in a videogame is for the user or game player to control the principal characterto beat the opponent such as a monster, the background displayed in thevideo game can be changed depending on details of the battle between theprincipal character and the opponent, resulting in realistic imagesdisplayed in the video game. The user can therefore experience simulatedcombats or battles between the principal character and the opponent, andremains interested in the video game.

[0022] The destruction displaying means or step may comprise determiningmeans for, or the step of, determining whether the background object isto be destroyed or not based on the positional information of thebackground object and the positional information of the damage applyingobject, display form selecting means for, or the step of, selecting aform of destruction depending on the type of the background object to bedestroyed, and rendering means for, or the step of, displaying thebackground object in a destroyed sequence according to rules of theselected form of destruction.

[0023] In this manner, a destroyed sequence depending on the type of thebackground object is displayed. For example, if the background object isa building, then it is displayed in a destroyed sequence of “collapsing”or “being tilted”. If the background object is a road, then it isdisplayed in a destroyed sequence of “being concaved”. If the backgroundobject is a railroad, then it is rendered in a destroyed sequence of“being bent” or “being cut off”. In the destroyed sequence of thebuilding, it may be displayed as collapsing while producing black smokesor flames.

[0024] The determining means or step may comprise means for, or the stepof, destroying the background object in display if the positionalinformation of the damage applying object is included in the positionalinformation of the background object.

[0025] According to yet still another aspect of the present invention,an entertainment system comprises an entertainment apparatus forexecuting various programs, at least one manual controller for enteringcontrol requests from the user into the entertainment apparatus, adisplay unit for displaying images outputted from the entertainmentapparatus, and viewpoint changing means for displaying, on the displayunit, a frame to change a viewpoint and a sight movable in the framedepending on a control input entered from the manual controller by theuser, and changing the viewpoint in the direction depending on thecontrol input entered by the user when the sight approaches the frame.

[0026] According to a further aspect of the present invention, anentertainment apparatus for connection to a manual controller foroutputting a control request from the user, and a display unit fordisplaying images, comprises viewpoint changing means for displaying, onthe display unit, a frame to change a viewpoint and a sight movable inthe frame depending on a control input entered from the manualcontroller by the user, and changing the viewpoint in the directiondepending on the control input entered by the user when the sightapproaches the frame.

[0027] According to a still further aspect of the present invention,there is provided a recording medium storing a program and data for usein an entertainment system having an entertainment apparatus forexecuting various programs, at least one manual controller for enteringcontrol requests from the user into the entertainment apparatus, and adisplay unit for displaying images outputted from the entertainmentapparatus, the program comprising the steps of displaying, on thedisplay unit, a frame to change a viewpoint and a sight movable in theframe depending on a control input entered from the manual controller bythe user, and changing the viewpoint in the direction depending on thecontrol input entered by the user when the sight approaches the frame.

[0028] According to a yet further aspect of the present invention, thereis provided a program readable and executable by a computer, for use inan entertainment system having an entertainment apparatus for executingvarious programs, at least one manual controller for entering controlrequests from the user into the entertainment apparatus, and a displayunit for displaying images outputted from the entertainment apparatus,the program comprising the steps of displaying, on the display unit, aframe to change a viewpoint and a sight movable in the frame dependingon a control input entered from the manual controller by the user, andchanging the viewpoint in the direction depending on the control inputentered by the user when the sight approaches the frame.

[0029] For changing the viewpoint, the indicia (sight) is moved closelyto the frame in the direction in which to change the viewpoint. Theviewpoint changing means or step changes the viewpoint in the directiondepending on the control input from the user when the indicia (sight)approaches the frame.

[0030] For example, if the frame is of a circular shape, then when theindicia (sight) contacts a right region (in the direction of 3 PM) ofthe circular frame, the viewpoint is changed to the right, and when theindicia (sight) contacts an upper right region (in the direction of 2PM) of the circular frame, the viewpoint is changed upward to the right.

[0031] Therefore, it is possible to change the viewpoint in thedirection in which the sight moves. The user can independently control arobot and set the sight while changing the viewpoint, and hence caneasily make control actions in video games such as shooting games andcombat games.

[0032] The viewpoint changing means or step may comprise means for, orthe step of, changing the viewpoint in display at a speed depending onthe control input entered by the user. The viewpoint moves at a speeddepending on the tilted angle of a joystick. Thus, the user can move theviewpoint slowly or quickly depending on the situation in which theprincipal character is placed, e.g., when the principal charactersearches the surrounding area or in case of emergency, e.g., when amonster appears. With the viewpoint being thus movable, the user findsthemselves more easily absorbed in the video game, and remainsinterested in the video game for a long period of time.

[0033] The viewpoint changing means or step may comprise appearancedirection displaying means for, or the step of, displaying an indicia,indicative of a direction in which a principal object will appear,closely to the frame. The displayed indicia allows the user to have aninstantaneous recognition of the direction in and the height at whichthe opponent will appear. When the user brings the sight into contactwith the region of the frame where the indicia is displayed, theviewpoint is changed in the direction of the opponent, allowing the userto set the sight quickly on the opponent.

[0034] The above and other objects, features, and advantages of thepresent invention will become more apparent from the followingdescription when taken in conjunction with the accompanying drawings inwhich a preferred embodiment of the present invention is shown by way ofillustrative example.

BRIEF DESCRIPTION OF THE DRAWINGS

[0035]FIG. 1 is a perspective view of an entertainment system accordingto the present invention;

[0036]FIG. 2 is a perspective view of a manual controller;

[0037]FIG. 3 is a plan view of the manual controller;

[0038]FIG. 4 is a diagram showing the relationship between vertical andhorizontal values achieved when left and right joysticks are operated;

[0039]FIG. 5 is a perspective view showing the manner in which themanual controller is used;

[0040]FIG. 6 is a bottom view, partly broken away, of the manualcontroller, showing vibration imparting mechanisms disposed respectivelyin left and right grips thereof;

[0041]FIG. 7 is a block diagram of a circuit arrangement of anentertainment apparatus;

[0042]FIG. 8 is a block diagram of the manual controller;

[0043]FIG. 9 is a block diagram of components for carrying outbidirectional serial communications between the manual controller andthe entertainment apparatus;

[0044]FIG. 10 is a view showing a displayed image on a display monitorwhich includes a frame, a sight, and an icon;

[0045]FIG. 11 is a view showing a displayed image which includes a robotflying upward;

[0046]FIG. 12 is a view showing a displayed image which includes abuilding broken in one way;

[0047]FIG. 13 is a view showing a displayed image which includes abuilding broken in another way;

[0048]FIG. 14 is a view showing a displayed image which includes a roadbroken in one way;

[0049]FIG. 15 is a view showing a displayed image which includes arailroad broken in one way;

[0050]FIG. 16 is a functional block diagram of a scene generating meansaccording to the present invention;

[0051]FIGS. 17 and 18 are a flowchart of a processing sequence of aviewpoint changing means;

[0052]FIG. 19 is a flowchart of a processing sequence of a destructiondisplaying means;

[0053]FIG. 20 is a flowchart of a processing sequence of a damageapplying object processing means;

[0054]FIG. 21 is a diagram showing details of a background objectinformation table;

[0055]FIG. 22 is a flowchart of a processing sequence of a destructiondetermining means; and

[0056]FIGS. 23 and 24 are a flowchart of a processing sequence of abackground object processing means.

DESCRIPTION OF THE PREFERRED EMBODIMENT

[0057] An entertainment system and an entertainment apparatus accordingto the present invention as applied to a video game apparatus, and arecording medium and a program according to the present invention asapplied to a recording medium which stores a program and data to beexecuted by the video game apparatus and a program to be executed by thevideo game apparatus will be described below with reference to FIGS. 1through 24.

[0058] As shown in FIG. 1, an entertainment system 10 basicallycomprises an entertainment apparatus 12 for executing various programs,a memory card 14 detachably connected to the entertainment apparatus 12,a manual controller 16 detachably connected to the entertainmentapparatus 12 by a connector 52, and a display monitor 18 such as atelevision receiver which is supplied with video and audio outputsignals from the entertainment apparatus 12.

[0059] The entertainment apparatus 12 reads a program recorded in a massstorage medium such as an optical disk 20 such as a CD-ROM or the like,and executes a game, for example, based on the program depending oncommands supplied from the user, e.g., the game player, via the manualcontroller 16. The execution of the game mainly represents controllingthe progress of the game by controlling the display of images and thegeneration of sounds on the display monitor 18 based on manual inputactions entered from the manual controller 16 via the connector 62.

[0060] The entertainment apparatus 12 has a substantially flat casing inthe shape of a rectangular parallelepiped which houses a disk loadingunit 22 disposed centrally for loading an optical disk 20 for supplyingan application program and data for a video game or the like. The casingsupports a reset switch 24 for resetting a program which is beingpresently executed, a disk control switch 26 for controlling the loadingof the optical disk 20, a power supply switch 28, and two slots 30, 32.

[0061] The entertainment apparatus 12 may be supplied with theapplication program via a communication link, rather than being suppliedfrom the optical disk 20 as the recording medium.

[0062] The slots 30, 32 have respective upper slot units 30B, 32B andrespective lower slot units 30A, 32A. Two manual controllers 16 may beconnected respectively to the lower slot units 30A, 32A, and memorycards 14 or portable information terminals (not shown) having thefunction of the memory card 14 for storing flags indicative of interimgame data may be connected respectively to the upper slot units 30B,32B. The slots 30, 32 (the upper slot units 30B, 32B and the lower slotunits 30A, 32A) are asymmetrically shaped to prevent the connectors 62and the memory cards 14 from being inserted in the wrong direction.

[0063] As shown in FIGS. 2 and 3, the manual controller 16 has first andsecond control pads 34, 36, an L (Left) button 38L, an R (Right) button38R, a start button 40, and a selection button 42. The manual controller16 also has joysticks 44, 46 for inputting analog control actions, amode selection switch 48 for selecting control modes of the joysticks44, 46, and a mode indicator 50 for indicating a selected control mode.The mode indicator 50 comprises a light-emitting element such as alight-emitting diode or the like.

[0064] As shown in FIG. 2, the manual controller 16 has a housing 104comprising an upper member 100 and a lower member 102 which are matedand joined to each other by fasteners such as screws.

[0065] As shown in FIGS. 2 and 3, a pair of left and right grips 106,108 projects from one side of respective opposite ends of the housing104. The left and right grips 106, 108 are shaped so as to be gripped bythe palms of left and right hands of the user or game player when themanual controller 16 is connected to the entertainment apparatus 12 andinformation retrieval is carried out or the game is played thereby, forexample.

[0066] As shown in FIG. 3, the left and right grips 106, 108 areprogressively spaced away from each other toward their distal ends. Toallow the game player to grip the left and right grips 106, 108comfortably for a long period of time, the left and right grips 106, 108are tapered from their joint with the housing 104 toward their distalends, and have arcuate outer peripheral surfaces and arcuate distal endsurfaces.

[0067] As shown in FIGS. 2 and 3, the first control pad 34 is disposedon one end of the housing 104 and comprises a first pressable controlmember (up button) 110 a, a second pressable control member (rightbutton) 110 b, a third pressable control member (down button) 110 c, anda fourth pressable control member (left button) 110 d. The first throughfourth pressable control members 110 a, 110 b, 110 c, 110 d project onan upper surface of the housing 104 and are arranged in a crisscrosspattern.

[0068] The first control pad 34 includes switch elements as signal inputelements associated respectively with the first through fourth pressablecontrol members 110 a, 110 b, 110 c, 110 d. The first control pad 34functions as a directional controller for controlling the direction ofmovement of a displayed game character, for example. When the gameplayer selectively presses the first through fourth pressable controlmembers 110 a, 110 b, 110 c, 110 d to turn on or off the switch elementsassociated respectively with the first through fourth pressable controlmembers 110 a, 110 b, 110 c, 110 d, the displayed game character movesin the direction corresponding to the pressed one of the first throughfourth pressable control members 110 a, 110 b, 110 c, 110 d.

[0069] As shown in FIGS. 2 and 3, the second control pad 36 is disposedon the other end of the housing 104 and comprises a first pressablecontrol member (Δ button) 112 a, a second pressable control member (□button) 112 b, a third pressable control member (X button) 112 c, and afourth pressable control member (◯ button) 112 d. The first throughfourth pressable control members 112 a, 112 b, 112 c, 112 d project onthe upper surface of the housing 104 and are arranged in a crisscrosspattern.

[0070] The first through fourth pressable control members 112 a, 112 b,112 c, 112 d are constructed as independent members, and associated withrespective switch elements as signal input elements disposed in thesecond control pad 36.

[0071] The second control pad 36 serves as a function setting/performingunit for setting functions for a displayed game character assigned tothe pressable control members 112 a-112 d or performing functions of adisplayed game character when the switch elements associated with thepressable control members 112 a-112 d are turned on.

[0072] The L button 38L and the R button 38R are disposed on a side ofthe housing 104 remote from the left and right grips 106, 108 andpositioned respectively at the opposite ends of the housing 104. Asshown in FIGS. 2 and 4, the L button 38L has a first left pressablecontrol member (L1 button) 114 a and a second left pressable controlmember (L2 button) 114 b, and the R button 38R has a first rightpressable control member (R1 button) 116 a and second right pressablecontrol member (R2 button) 116 b, respectively. The L button 38L and theR button 38R have respective switch elements associated respectivelywith the pressable control members (the L1 button 114 a, the L2 button114 b, the R1 button 116 a, and the R2 button 116 b).

[0073] The L button 38L and the R button 38R serve as respectivefunction setting/performing units for setting functions for a displayedgame character assigned to the pressable control members 114 a, 114 band 116 a, 116 b or performing functions of a displayed game characterwhen the switch elements associated with the pressable control members114 a, 114 b and 116 a, 116 b are turned on.

[0074] As shown in FIGS. 2 and 3, the manual controller 16 also hasfirst and second analog control pads 118, 120 disposed respectively atconfronting corners defined between the housing 104 and the proximalends of the left and right grips 106, 108 which are joined to thehousing 104.

[0075] The first and second analog control pads 118, 120 have therespective joysticks 44, 46 which can be tilted in all directions (360°)about control shafts thereof, and respective signal input elements suchas variable resistors or the like which are operable by the respectivejoysticks 44, 46. Specifically, the control shafts of the left and rightjoysticks 44, 46 are normally urged to return to their neutral positionsby biasing members. The left and the right joysticks 44, 46 can befreely tilted in all directions (360°) about the axes of the controlshafts.

[0076] The first and second analog control pads 118, 120 can move adisplayed game character while rotating the same or while changing itsspeed, and can make an analog-like action such as to change the form ofa displayed character, when the game player manipulates the joysticks44, 46. Therefore, the first and second analog control pads 118, 120 areused as a control unit for entering command signals for a displayedcharacter to perform the above movement or action.

[0077] As shown in FIG. 4, analog input values which are supplied fromthe first and second analog control pads 118, 120 when the left andright joysticks 44, 46 are operated include vertical values Lv rangingdownward from “0” to “255” and horizontal values Lh ranging rightwardfrom “0” to “255”.

[0078] The first and second analog control pads 118, 120 can also outputother signals than the vertical values Lv and the horizontal values Lhwhen the left and right joysticks 44, 46 are pressed.

[0079] When the mode selection switch 48 is pressed, it can select acontrol mode for allowing a command signal to be inputted from the firstand second analog control pads 118, 120 or a control mode for inhibitinga command signal from being inputted from the first and second analogcontrol pads 118, 120.

[0080] When the mode selection switch 48 is pressed, the functions ofthe first through fourth pressable control members 112 a, 112 b, 112 c,112 d of the second control pad 36, and the functions of the pressablecontrol members 114 a, 114 b and 116 a, 116 b of the L button 38L andthe R button 38R are changed depending on the control mode selected bythe pressed mode selection switch 48. Depending on the control modeselected by the mode selection switch 48, the mode indicator 50 flickersand changes its indication light.

[0081] As shown in FIG. 5, the left and right grips 106, 108 projectingfrom the housing 104 are gripped respectively by the palms of the handsof the game player. The housing 104 is not required to be supported byfingers, and the manual controller 16 can be held by the hands while atleast six out of the ten fingers of the hands can freely be moved.

[0082] As shown in FIG. 5, when the first and second grips 106, 108 aregripped respectively by the palms of the hands of the game player, thethumbs Lf1, Rf1 of the left and right hands can extend over thejoysticks 44, 46 of the first and second analog control pads 118, 120,the first through fourth pressable control members 110 a-110 d of thefirst control pad 34, and the first through fourth pressable controlmembers 112 a-112 d of the second control pad 36, and can selectivelypress the joysticks 44, 46, the pressable control members 110 a-110 d,and the pressable control members 112 a-112 d.

[0083] Since the joysticks 44, 46 of the first and second analog controlpads 118, 120 are positioned in confronting relation to the proximalends of the left and right grips 106, 108 which are joined to thehousing 104, when the left and right grips 106, 108 are gripped by theleft and right hands, the joysticks 44, 46 are positioned most closelyto the thumbs Lf1, Rf1, respectively. Therefore, the joysticks 44, 46can easily be manipulated by the thumbs Lf1, Rf1.

[0084] As shown in FIG. 5, when the left and right grips 106, 108 aregripped respectively by the palms of the hands of the game player, theindex fingers Lf2, Rf2 and middle fingers Lf3, Rf3 of the left and righthands can extend over positions where they can selectively press the L1button 114 a, L2 button 114 b of the L button 38L and R1 button 116 a,R2 button 116 b of the R button 38R.

[0085] As shown in FIG. 6, the manual controller 16 has a pair ofvibration imparting mechanisms 128L, 128R for imparting vibrations tothe user in order for the user to be able to play a highly realisticgame.

[0086] As shown in FIG. 6, the left and right vibration impartingmechanisms 128L, 128R are positioned near the proximal ends of the leftand right grips 106, 108 that are held by the hands and fingers when themanual controller 16 is gripped by the user.

[0087] Since the both vibration imparting mechanisms 128L, 128R havebasically the same structure except their vibration characteristics,only the right vibration imparting mechanism 128R will be described forthe purpose of brevity.

[0088] The vibration imparting mechanisms 128R comprises a motor 130Renergizable by a vibration generating command supplied from theentertainment apparatus 12, and an eccentric member 134R mountedeccentrically on the drive shaft of the motor 130R.

[0089] The eccentric member 134R comprises a weight in the form of aheavy metal member having a semicircular cross-sectional shape. Theweight has an off-center hole defined therein in which the drive shaftof the motor 130R is fitted.

[0090] According to the vibration imparting mechanisms 128L, 128R asconstructed above, when the motors 130L, 130R are energized, the driveshafts thereof rotate to cause the eccentric members 134L, 134R torotate in an eccentric motion for thereby generating vibrations, whichare imparted to the left grip 106 and the right grip 108. Then, thevibrations of the left grip 106 and the right grip 108 are applied tothe hands and fingers of the user.

[0091] Next, the vibration characteristics of the vibration impartingmechanisms 128L, 128R disposed in the left grip 106 and the right grip108 respectively will be described hereinbelow.

[0092] The vibration imparting mechanisms 128L, 128R have the differentvibration characteristics.

[0093] For example, the motor 130L of the left vibration impartingmechanism 128L is bigger than the motor 130R of the right vibrationmechanism 128R. The rotational speed of the motor 130L varies accordingto a vibration value included in a vibration generating commandtransmitted from the entertainment apparatus 12. That is, vibrationshaving different frequencies can be generated depending on the vibrationvalue. In the present embodiment, the vibration frequency of the motor130L varies in proportion to the vibration value.

[0094] In contrast to the motor 130L of the left vibration mechanism128L, the vibration frequency of the motor 130R of the right vibrationmechanism 128R does not vary according to the vibration value includedin the vibration generating command. The motor 130R of the rightvibration mechanism 128R is simply either energized or de-energizedaccording to the vibration value. If the vibration value (logic value)is “1”, the motor 130R of the right vibration mechanism 128R isenergized. If the vibration value is “0”, the motor 130R of the rightvibration mechanism 128R is de-energized. When the motor 130R of theright vibration mechanism 128R is energized, it rotates at a constantspeed to generate vibrations at a constant frequency.

[0095] In order to energize the motors 130L, 130R to vibrate the manualcontroller 16 in its entirety, a bidirectional communication functionneeds to be provided between the manual controller 16 and theentertainment apparatus 12. This bidirectional communication functionwill be described later on.

[0096] Now, circuit arrangements of the entertainment apparatus 12 andthe manual controller 16 will be described below with reference to FIGS.7 through 9.

[0097] As shown in FIG. 7, the entertainment apparatus 12 generallycomprises a control system 60, a graphic generating system 64 connectedto the control system 60 via a system bus 62, a sound generating system66 connected to the control system 60 via the system bus 62, and anoptical disk control system 68 connected to the control system 60 viathe system bus 62. A communication controller 58 for controlling data tobe inputted to and outputted from the manual controller 16 and thememory card 14 is also connected to the control system 60 via the systembus 62.

[0098] The manual controller 16 supplies commands (including controldata) from the user via a communication controller 150 (see FIG. 8) ofthe manual controller 16 and the communication controller 58 to theentertainment apparatus 12. The optical disk control system 68 includesan optical disk drive 70 in which the optical disk 20, which maycomprise a CD-ROM or the like as a specific example of a recordingmedium according to the present invention.

[0099] The control system 60 controls motions of characters displayed onthe monitor 18 based on a program and data read from the optical disk 20and commands supplied from the manual controller 16.

[0100] The control system 60 includes a central processing unit (CPU)72, a peripheral device controller 74 for controlling interrupts anddirect memory access (DMA) data transfer, a main memory 76 comprising arandom-access memory (RAM), and a read-only memory (ROM) 78 which storesvarious programs such as an operating system for managing the graphicgenerating system 64, the sound generating system 66, etc. The mainmemory 76 can store at least a game program that is supplied from theoptical disk 20 and executed by the central processing unit 72.

[0101] The CPU 72 controls the entertainment apparatus 12 in itsentirety by executing the operating system stored in the ROM 78. The CPU72 comprises a 32-bit RISC-CPU, for example.

[0102] When the entertainment apparatus 12 is turned on, the CPU 72executes the operating system stored in the ROM 78 to start controllingthe graphic generating system 64, the sound generating system 66, etc.

[0103] When the operating system is executed, the CPU 72 initializes theentertainment apparatus 12 in its entirety for confirming its operation,and thereafter controls the optical disc control system 68 to execute anapplication program such as a game program recorded in the optical disk20.

[0104] As the application program such as a game program is executed,the CPU 72 controls the graphic generating system 64, the soundgenerating system 66, etc. depending on commands entered by the user forthereby controlling the display of images and the generation of musicsounds and sound effects.

[0105] The graphic generating system 64 comprises a geometry transferengine (GTE) 80 for performing coordinate transformations and otherprocessing, a graphic processing unit (GPU) 82 for rendering image dataaccording to instructions from the CPU 72, a frame buffer 84 for storingimage data rendered by the GPU 82, and an image decoder 86 for decodingimage data compressed and encoded by an orthogonal transform such as adiscrete cosine transform.

[0106] The GTE 80 has a parallel arithmetic mechanism for performing aplurality of arithmetic operations parallel to each other, and canperform coordinate transformations and light source calculations, andcalculate matrixes or vectors at a high speed in response to a requestfrom the CPU 72.

[0107] Specifically, the GTE 80 can calculate the coordinates of amaximum of 1.5 million polygons per second for a flat shading process toplot one triangular polygon with one color, for example. With the GTE80, the entertainment apparatus 12 is able to reduce the burden on theCPU 72 and perform high-speed coordinate calculations.

[0108] According to an image generating instruction from the CPU 72, theGPU 82 generates and stores the data of a polygon or the like in theframe buffer 84. The GPU 82 is capable of generating and storing amaximum of 360 thousand polygons per second.

[0109] The frame buffer 84 comprises a dual-port RAM, and is capable ofsimultaneously storing image data generated by the GPU 82 or image datatransferred from the main memory 76, and reading image data for display.The frame buffer 84 has a storage capacity of 1 Mbytes, for example, andis handled as a 16-bit matrix made up of a horizontal row of 1024 pixelsand a vertical column of 512 pixels.

[0110] The frame buffer 84 has a display area for storing image data tobe outputted as video output data, a CLUT (color look-up table) area forstoring a color look-up table which will be referred to by the GPU 82when it renders a polygon or the like, and a texture area for storingtexture data to be subjected to coordinate transformations when apolygon is generated and mapped onto a polygon generated by the GPU 82.The CLUT area and the texture area are dynamically varied as the displayarea is varied.

[0111] The GPU 82 can perform, in addition to the flat shading process,a Gouraud shading process for determining colors in polygons byinterpolating intensities from the vertices of the polygons, and atexture mapping process for mapping textures stored in the texture areaonto polygons. For performing the Gouraud shading process or texturemapping process, the GTE 80 can perform coordinate calculations for amaximum of about 500,000 polygons per second.

[0112] The image decoder 86 is controlled by the CPU 72 to decode imagedata of a still or moving image stored in the main memory 76, and storethe decoded image into the main memory 76.

[0113] Image data reproduced by the image decoder 86 is transferred tothe frame buffer 84 by the GPU 82, and can be used as a background foran image plotted by the GPU 82.

[0114] The sound generating system 66 comprises a sound processing unit(SPU) 88 for generating music sounds, sound effects, etc. based oninstructions from the CPU 72, and a sound buffer 90 for storing musicsounds, sound effects, etc. generated by the SPU 88. Audio signalsrepresenting music sounds, sound effects, etc. generated by the SPU 88are supplied to audio terminals of the monitor 18. The monitor 18 has aspeaker 92 which radiates music sounds, sound effects, etc. generated bythe SPU 88 based on the supplied audio signals.

[0115] The SPU 88 has an ADPCM (adaptive differential PCM) function forreproducing 16-bit audio data which has been encoded as 4-bitdifferential audio data by ADPCM, a reproducing function for reproducingwaveform data stored in the sound buffer 90 to generate sound effects,etc., and a modulating function for modulating and reproducing thewaveform data stored in the sound buffer 90.

[0116] The sound system 66 with these functions can be used as asampling sound source which generates music sounds, sound effects, etc.based on the waveform data stored in the sound buffer 90 according toinstructions from the CPU 72.

[0117] The optical disk control system 68 comprises an optical diskdrive 70 for reproducing application programs and data recorded on theoptical disk 20, a decoder 94 for decoding programs and data that arerecorded with an error correction code added thereto, and a buffer 96for temporarily storing data read from the optical disk drive 70 so asto allow the data from the optical disk 20 to be read at a high speed.An auxiliary CPU 98 is connected to the decoder 94.

[0118] Audio data recorded on the optical disk 20 which is read by theoptical disk drive 70 includes PCM data converted from analog soundsignals, in addition to the ADPCM data.

[0119] The ADPCM data, which is recorded as 4-bit differential data of16-bit digital data, is decoded by the decoder 94, supplied to the SPU88, converted thereby into analog sound signals, and applied to drivethe speaker 92.

[0120] The PCM data, which is recorded as 16-bit digital data, isdecoded by the decoder 94 and then applied to drive the speaker 92.

[0121] As shown in FIG. 8, the manual controller 16 comprises acommunication controller 150, a CPU 152, a program memory 154, a workingRAM 156, a digital input block 158, an analog input block 160, a leftmotor driver 170L for energizing the left motor 130L, and a right motordriver 170R for energizing the right motor 130R. These components of themanual controller 16 are connected to a bus 162.

[0122] The digital input block 158 functions as a manual inputcontroller for the pressable control members 110 a-110 d of the firstcontrol pad 34 and the pressable control members 112 a-112 d of thesecond control pad 36. The analog input block 160 functions as a manualinput controller for the left and right joysticks 44, 46. The digitalinput block 158 and the analog input block 160 allow the user to entervarious items of information into the manual controller 16.

[0123] The communication controller 150 has a function to effect serialcommunications with an external device. The communication controller 150is electrically connectable to the communication controller 90 (see FIG.7) of the entertainment apparatus 12, for example, for datacommunications with the entertainment apparatus 12.

[0124] As shown in FIG. 9, the bidirectional communication functionbetween the entertainment apparatus 12 and the manual controller 16 canbe performed when the connector 52 capable of performing bidirectionalserial communications with the manual controller 16 is connected to theentertainment apparatus 12.

[0125] A system in the manual controller 16 for performing thebidirectional communication function comprises a serial I/O interfaceSIO for performing serial communication with the entertainment apparatus12, a parallel I/O interface PIO for entering control data from aplurality of control buttons, a one-chip microcomputer comprising a CPU,a RAM, and a ROM, and a pair of motor drivers 170R, 170L for energizingthe motors 130R, 130L of the vibration imparting mechanisms 128R, 128L.Each of the motors 130R, 130L is energized by a voltage and a currentsupplied from the motor drivers 170R, 170L.

[0126] A system in the entertainment apparatus 12 for performing thebidirectional communication function comprises a serial I/O interfaceSIO for performing serial communication with the manual controller 16.When the connector 62 is connected to the serial I/O interface SIO ofthe entertainment apparatus 12, the serial I/O interface SIO of theentertainment apparatus 12 is connected to the serial I/O interface SIOof the manual controller 16 via the connector 62 for performingbidirectional communications between the entertainment apparatus 12 andthe manual controller 16. Other detailed structure of the entertainmentapparatus 12 are omitted from illustration in FIG. 9.

[0127] Signal and control lines for bidirectional serial communicationsinclude a data transfer signal line TXD (Transmit X′ for Data) forsending data from the entertainment apparatus 12 to the manualcontroller 16, a data transfer signal line RXD (Received X′ for Data)for sending data from the manual controller 16 to the entertainmentapparatus 12, a serial synchronous clock signal line SCK (Serial Clock)for extracting data from the data transfer signal lines TXD, RXD, acontrol line DTR (Data Terminal Ready) for establishing and cutting offcommunication with the manual controller 16 as a terminal, and a flowcontrol line DSR (Data Set Ready) for transferring a large amount ofdata.

[0128] The signal and control lines for bidirectional serialcommunication are accommodated in a cable. This cable further includes apower line 172 extending from a power supply in the entertainmentapparatus 12 and connected to the motor drivers 170R, 170L in the manualcontroller 16 for supply electric energy to energize the motors 130R,130L.

[0129] A process of bidirectional serial communication between theentertainment apparatus 12 and the manual controller 16 will bedescribed below. In order for the entertainment apparatus 12 tocommunicate with the manual controller 16 to read control data from thedigital input block 158 and the analog input block 160, theentertainment apparatus 12 first outputs selection data to the controlline DTR. As a result, the manual controller 16 confirms that it isselected by the control line DTR, and then waits for a signal from thesignal line TXD. Then, the entertainment apparatus 12 outputs anidentification code indicative of the manual controller 16 to the datatransfer signal line TXD. The manual controller 16 receives theidentification code from the signal line TXD.

[0130] When the manual controller 16 recognizes the identification code,the manual controller 16 starts communicating with the entertainmentapparatus 12. The entertainment apparatus 12 sends control data via thedata transfer signal line TXD to the manual controller 16, which sendscontrol data from the digital input block 158 and the analog input block160 via the data transfer signal line RXD to the entertainment apparatus12. In this manner, the entertainment apparatus 12 and the manualcontroller 16 perform bidirectional serial communications. Thebidirectional serial communications will be finished when theentertainment apparatus 12 outputs selection stop data via the controlline DTR.

[0131] With the bidirectional serial communication function, the manualcontroller 16 can send mainly control data from the digital input block158 and the analog input block 160 to the entertainment apparatus 12,and the entertainment apparatus 12 can send vibration generatingcommands for energizing the motors 130R, 130L of the vibration impartingmechanisms 128R, 128L via the data transfer signal line TXD to themanual controller 16.

[0132] The vibration generating commands for energizing the motors 130R,130L include those which have been established in advance in the opticaldisk 20 set in the entertainment apparatus 12 and those which are newlygenerated in the entertainment apparatus 12.

[0133] Characteristic functions of the entertainment system 10 accordingto the present embodiment will be described below with reference toFIGS. 10 through 24.

[0134] The characteristic functions of the entertainment system 10include a destruction displaying function and a viewpoint changingfunction that are to be performed in a video game.

[0135] According to the destruction displaying function, it isdetermined whether a background object which is being displayed on thedisplay monitor 18 is destroyed or not based on positional informationof the displayed background object and positional information of adamage applying object, and a process of destroying the backgroundobject is displayed if the background object has been determined asbeing destroyed.

[0136] According to the viewpoint changing function, the display monitor18 displays a frame for changing the viewpoint as seen from the user andan indicia that is movable in the frame depending on the control inputentered by the user, and when the indicia approaches the frame, theviewpoint is changed in the direction depending on the control inputentered by the user.

[0137] First, the viewpoint changing function will specifically bedescribed below.

[0138] When the viewpoint changing function is performed, as shown inFIG. 10, the display monitor 18 displays, on its display screen 200, arobot 202 controllable by the user, a circular frame 204 for changingthe viewpoint as seen from the user, and a circular sight 206 movable inthe frame 204 depending on the control input entered by the user. Thoughnot displayed on the screen 200, an imaginary second frame 226,indicated by the two-dot-and-dash line, which serves as a boundary forchanging the viewpoint, is established inwardly of the frame 204.

[0139] When the user operates the left joystick 44, for example, of themanual controller 16 to enter a control input, the robot 202 is movedaccording to the control input entered by the user. When the useroperates the right joystick 46 to enter a control input, the sight 206is moved according to the control input entered by the user.

[0140] Specifically, the robot 202 is moved as follows: When the usertilts the left joystick 44 to the left, for example, the viewpoint isoriented forward and the robot 202 is moved to the left. When the userrotates the left joystick 44 clockwise, the viewpoint is orientedforward and the robot 202 is rotated clockwise.

[0141] When the user presses in the left joystick 44, as shown in FIG.11, a booster 208 of the robot 202 is actuated and the robot 202 fliesupward. At this time, an image 210 representing flames ejected from thebooster 208 may be displayed on the display screen 200.

[0142] The sight 206 is moved in the direction in which the user tiltsthe right joystick 46. For example, when the user tilts the rightjoystick 46 to the right, the sight 206 is moved to the right. When thesight 206 is moved closely to the frame 204, i.e., when the sight 206 ismoved until it contacts the imaginary second frame 226, the viewpointchanges slowly to the right. When the sight 206 is moved to the rightand held against the frame 204, the viewpoint changes quickly to theright.

[0143] The display monitor 18 also displays on its display screen 200 anicon 214 (see FIG. 10) indicative of a position where a target, e.g., amonster 212 (see FIG. 11) will appear. When the user moves the sight 206in the direction indicated by the icon 214, the viewpoint changes to theposition where the monster 212 will appear.

[0144] When the user presses in the right joystick 46, a weapon 216carried by the robot 202 ejects bullets or shells 218, which arepropelled in the direction indicated by the sight 206.

[0145] The destruction displaying function will specifically bedescribed below.

[0146] When a displayed damaging object such as the robot 202, themonster 212, or bullets or shells 218 hits a displayed background objectsuch as a building 220, a road 222, or a railroad 224 (see FIG. 15), thedisplayed background object is destroyed according to a processdepending on the type of the background object.

[0147] For example, as shown in FIG. 12, when the robot 202 or themonster 212 which is heavy hits the building 220, the building 220collapses obliquely sideways. As shown in FIG. 13, when the robot 202 orthe monster 212 is landed on the building 220, the building 220collapses vertically. If the building 220 collapses with black smokes orflames, then the destruction of the building 220 is displayed in arealistic scene.

[0148] Displayed background objects which can be destroyed may alsoinclude the road 222 and the railroad 224 which are usually ignored,thus producing more destruction scenes than available before. Forexample, as shown in FIG. 14, when the heavy robot 202 is landed on theroad 222, the road 222 is displayed as concaved. As shown in FIG. 15,when the heavy robot 202 walks across the railroad 224, the railroad 224is displayed as being bent. The user can therefore play the video gamewhile experiencing a simulated combat waged by the robot 202.

[0149] One example of software for performing the above characteristicfunctions will be described below with reference to FIGS. 16 through 24.As shown in FIG. 16, the software comprises a scene generating means300.

[0150] The scene generating means 300 can be supplied to theentertainment system 10 from a randomly accessible recording medium suchas a CD-ROM, the memory card 14, or a network. It is assumed in thepresent embodiment that the scene generating means 300 is read from theoptical disk 20 such as a CD-ROM into the entertainment apparatus 12.

[0151] The scene generating means 300 is downloaded in advance from theoptical disk 20 played back by the entertainment apparatus 12 into themain memory 76 in the control system 60 thereof according to apredetermined process, and executed by the CPU 72 of the control system60, as shown in FIG. 7.

[0152] As shown in FIG. 16, the scene generating means 300 comprises aviewpoint changing means 302 for displaying, on the display monitor 18,the frame 204 to change the viewpoint and the sight 206 movable in theframe 204 depending on the control input entered by the user, andchanging the viewpoint in the direction depending on the control inputentered by the user when the sight 206 approaches the frame 204, and adestruction displaying means 304 for determining whether a backgroundobject which is being displayed on the display monitor 18 is destroyedor not based on positional information of the displayed backgroundobject and positional information of a damage applying object, anddisplaying the background object in a destroyed sequence if thebackground object has been determined as being destroyed.

[0153] The viewpoint changing means 302 comprises a frame displayingmeans 310 for displaying the circular frame 204 to change the viewpoint,a sight displaying means 312 for displaying the sight 206 in motionbased on a user's action to tilt the right joystick 46, an appearancedirection calculating means 314 for calculating a direction in which atarget, i.e., the monster 212, appears with respect to the viewpointwhen the target appears, an icon displaying means 316 for displaying theicon 214 in an area corresponding to the direction in which the monster212 appears, a viewpoint changing and displaying means 318 for changingand displaying the viewpoint in the direction depending on the controlinput entered by the user, based on the movement of the sight 206closely to the frame 204, a shooting displaying means 320 for displayinga shooting of bullets or shells 218 from the weapon 216 carried by therobot 202 in response to a pressing of the right joystick 46, a movementdisplaying means 322 for displaying the robot 202 in motion in responseto a tilting of the left joystick 44, and a flight displaying means 324for displaying the robot 202 in flight upward in response to a pressingof the left joystick 44.

[0154] The destruction displaying means 304 comprises a damage applyingobject processing means 330 for rendering an object (damage applyingobject) such as the robot 202 carrying the principal character, themonster 212 as a target, or bullets or shells 218 shot from the weapon216, which applies damage to a background object, a destructiondetermining means 332 for determining whether the background object isto be destroyed or not based on the positional relationship between thedamage applying object and the background object, a background objectprocessing means 334 for rendering the background object as it is beingdestroyed, and an image displaying means 336 for outputting image datarendered and stored in the frame buffer 84 to the display monitor 18 todisplay a corresponding image on the display screen 200 of the displaymonitor 18.

[0155] The background object processing means 334 comprises a displayform selecting means 340 for selecting a form of destruction dependingon the type of the background object to be destroyed, and a destructionrendering means 342 for displaying the background object in a destroyedsequence according to the rules of the selected form of destruction.

[0156] A processing sequence of the viewpoint changing means 302 will bedescribed below with reference to FIGS. 17 and 18.

[0157] In step S1 shown in FIG. 17, the frame displaying means 310 ofthe viewpoint changing means 302 displays the circular frame 204 on thedisplay screen 200 of the display monitor 18 as shown in FIG. 10. Then,in step S2, the sight displaying means 312 displays the circular sight206 centrally in the frame 204 displayed on the display screen 200.

[0158] In step S3, the appearance direction calculating means 314determines whether a target, i.e., the monster 212, has appeared or notby referring to an information table of registered types of displayedobjects or a flag.

[0159] If the monster 212 has appeared, then control goes to step S4 inwhich the appearance direction calculating means 314 reads coordinateswhere the monster 212 has appeared. These coordinates may be coordinatesin a world coordinate system which are used to display athree-dimensional image of the object of the monster 212.

[0160] In step S5, the appearance direction calculating means 314calculates the direction in which the monster 212 has appeared, as seenfrom the viewpoint, based on the read coordinates. In step S6, the icondisplaying means 316 displays the icon 214 indicative of the directionin which the monster 212 has appeared, in an area on the periphery ofthe frame 204 corresponding to the calculated direction. The displayedicon 214 indicates that the monster 212 has appeared to the right of theviewpoint, though the monster 212 is not shown in FIG. 10.

[0161] If the monster 212 has not appeared in step S3, then control goesto step S7 in which the icon displaying means 316 eliminates the icon214 if the icon 214 is presently displayed.

[0162] After step S6 or S7, control goes to step S8 in which theviewpoint changing means 302 determines whether there is a control inputentered by the user or not. If there is no control input entered by theuser, then control goes back to step S3 to repeat the processing fromstep S3.

[0163] If there is a control input entered by the user in step S8, thencontrol goes to step S9 shown in FIG. 18 in which the viewpoint changingmeans 302 determines whether the entered control input is a tiltingaction of the right joystick 46 or not.

[0164] If the control input is a tilting action of the right joystick46, then control proceeds to step S10 in which the viewpoint changingmeans 302 calculates a tilted interval K of the right joystick 46. Thetilted interval K of the right joystick 46 is calculated as follows:Based on the vertical value Lv and the horizontal value Lh of the rightjoystick 46, a substantial tilted value K_(L) is determined according tothe following equation:

K _(L)={square root}{square root over ( )}{(Lv−128)²+(Lh−128)²}

[0165] Then, the determined tilted value K_(L) (0≦K_(L)≦127) isconverted into a value (tilted interval K) on a ten-step scale.

[0166] In step S11, the sight displaying means 312 moves the presentlydisplayed sight 206 by a distance corresponding to the tilted interval Kin the direction in which the right joystick 46 is tilted. When thejoystick 46 is tilted back to its upstanding position, the sight 206returns to a central position in the frame 204.

[0167] In step S12, the viewpoint changing means 302 determines whetherthe viewpoint needs to be changed or not based on whether or not thetilted interval K is equal to or greater than “8”. If the tiltedinterval K is “8”, then the sight 206 moves over such a distance that itcontacts the imaginary second frame 226, and hence the viewpoint ischanged.

[0168] Specifically, in step S13, the viewpoint changing and displayingmeans 318 changes the viewpoint in the direction in which the sight 206has contacted the second frame 226 or the frame 204, and displays abackground object present in the direction of the changed viewpoint interms of world coordinates.

[0169] For example, when the sight 206 contacts a right region of thesecond frame 226 while staying within the second frame 226, theviewpoint changes slowly to the right, and a background object presenton the right-hand side of the robot 202 in terms of world coordinates isdisplayed. When the sight 206 moves beyond the second frame 226 intocontact with the frame 204, the viewpoint changes quickly to the right.

[0170] In step S13, the viewpoint moves in the direction in which thejoystick 46 is tilted at a speed depending on the tilted interval K. Thespeed is selected from three speeds. The speed is highest when thetilted interval K is “10”, and lowest when the tilted interval K is “8”.

[0171] If the tilted interval K is of a value ranging from “0” to “7” inthe processing in steps S11 through S13, then the sight 206 moves in theframe 204 over a distance corresponding to the tilted interval K.

[0172] If the tilted interval K is “8” or “9”, then the sight 206 movesin the frame 204 over a distance corresponding to the tilted interval K.Since the sight 206 contacts the imaginary second frame 226, theviewpoint moves at a speed represented by the value of (the tiltedinterval K−7=1 or 2) and in the direction in which the joystick 46 istilted.

[0173] If the tilted interval K is “10”, then the sight 206 moves in theframe 204 over a distance corresponding to the tilted interval K. Sincethe sight 206 contacts the frame 204, the viewpoint moves at a speedrepresented by the value of (the tilted interval K−7=3) and in thedirection in which the joystick 46 is tilted.

[0174] As described above, the viewpoint starts to be changed when thesight 206 approaches the frame 204 to a certain extent. When the tiltedinterval K is small, the viewpoint is slowly changed. When the sight 206is brought into contact with the frame 204, the viewpoint is changed ata maximum speed.

[0175] In step S14, the viewpoint changing means 302 determines whetherthe right joystick 46 is pressed or not. If the right joystick 46 ispressed, then control goes to step S15 in which the shooting displayingmeans 320 displays bullets or shells 218 that are shot from the weapon216 carried by the robot 202 and kept in flight forward.

[0176] In step S16, the viewpoint changing means 302 determines whetherthe entered control input is a tilting action of the left joystick 44 ornot.

[0177] If the entered control input is a tilting action of the leftjoystick 44, then control goes to step S17 in which the movementdisplaying means 322 displays the robot 202 in motion based on data(coordinate data) of the tilting action of the left joystick 44.

[0178] In step S18, the viewpoint changing means 302 determines whetherthe left joystick 44 is pressed or not. If the left joystick 44 ispressed, then control goes to step S19 in which the flight displayingmeans 324 displays the robot 202 in flight upward. At this time, theimage 210 representing flames ejected from the booster 208 on the backof the robot 202 may be displayed on the display screen 200.

[0179] In the above processing in steps S9 through S19, when the leftjoystick 44 is pressed and tilted to the right and the right joystick 46is pressed and tilted to the left, the robot 202 flies upward to theright, and shoots bullets or shells 218 to the left.

[0180] In step S20, the viewpoint changing means 302 determines whetherthere is a program end request (gameover or power supply turn-off) withrespect to the viewpoint changing means 302 or not. If there is noprogram end request, then control returns to step S3, and repeats theprocessing from step S3.

[0181] If there is a program end request, then the processing sequenceof the viewpoint changing means 302 is put to an end.

[0182] A processing sequence of the destruction displaying means 304will be described below with reference to FIG. 16 and FIGS. 19 through24.

[0183] In step S101 shown in FIG. 19, the damage applying objectprocessing means 330 of the destruction displaying means 304 executesits processing sequence. The processing sequence of the damage applyingobject processing means 330 will be described below with reference toFIG. 20.

[0184] In step S201 shown in FIG. 20, the damage applying objectprocessing means 330 stores an initial value “0” in an index register iused to retrieve a damage applying object, thus initializing the indexregister i.

[0185] In step S202, the damage applying object processing means 330reads object data of an ith damage applying object from an object datafile of damage applying objects stored in the optical disk 20, forexample.

[0186] In step S203, the damage applying object processing means 330rewrites the vertex data of the object data based on present movementinformation. In step S204, the damage applying object processing means330 performs a rendering process based on the object data for therebyrendering and storing a three-dimensional image of the ith damageapplying object in the frame buffer 84.

[0187] In step S205, the damage applying object processing means 330obtains positional information from the vertex data of the ith damageapplying object.

[0188] In step S206, the damage applying object processing means 330increments the value of the index register i by “+1”. In step S207, thedamage applying object processing means 330 determines whether alldamage applying objects have been processed or not based on whether ornot the value of the index register i is equal to or greater than thenumber M of damage applying objects.

[0189] If all damage applying objects have not been processed, thencontrol returns to step S202 to perform a rendering process and obtainpositional information on a next damage applying object.

[0190] If all damage applying objects have been processed, then theprocessing sequence of the damage applying object processing means 330is put to an end.

[0191] Control then returns to the main routine shown in FIG. 19. Instep S102 shown in FIG. 19, the destruction determining means 332performs its own processing sequence. In the processing sequence, thedestruction determining means 332 uses a background object informationtable. As shown in FIG. 21, the background object information table hasa plurality of records of background objects. Each of the recordscontains a destruction flag indicative of whether a destruction needs tobe displayed or not, a method selection flag indicative of a hitattribute method or a random number method, the type of the backgroundobject, and a count indicating the level (stage) of a destructiondisplay process.

[0192] The hit attribute method or the random number method which isindicated by the method selection flag is used for displaying thebackground object in a destroyed sequence. For example, when thebackground object in a displayed sequence is displayed based on movementdata in each step of the destruction display process, the hit attributemethod or the random number method is used as a method of obtaining anindex for selecting a destruction display process data file which iscomposed of an array of such movement data.

[0193] More specifically, if the background object is the building 220,it may collapse obliquely sideways as shown in FIG. 12 or it maycollapse vertically as shown in FIG. 13. Whether the building 220collapses obliquely sideways or vertically depends on the direction inwhich a damage applying object (e.g., the robot 202) hits the building220.

[0194] In this case, the hit attribute method is used as a method ofselecting a destruction display process data file, an attribute value,which is “1” when the background object collapses obliquely sideways and“2” when the background object collapses vertically, is determined inanalyzing positional information of the damage applying object and thebackground object, and a necessary destruction display process data fileis searched for based on the type and attribute value of the backgroundobject. In this manner, the background object is prevented from beingdisplayed unnaturally and can be displayed in a realistic scene ofvirtual reality.

[0195] According to the random number method, a random number isgenerated, and a necessary destruction display process data file issearched for based on the type of the background object and the randomnumber. The random number method allows various destruction displayprocesses to be obtained for one type of background object, making itpossible to express a destruction scene, which would otherwise tend tobe monotonous, as a realistic destruction scene.

[0196] Different types of background objects include the building 220(made of wood, reinforced concrete, etc.), the road 222, the railroad224, an automobile, a bridge, etc.

[0197] The processing sequence of the destruction determining means 332will be described below with reference to FIG. 22. In step S301 shown inFIG. 22, the destruction determining means 332 stores an initial value“0” in an index register j used to retrieve a background object, thusinitializing the index register j.

[0198] In step S302, the destruction determining means 332 reads objectdata of a jth background object from an object data file of backgroundobjects stored in the optical disk 20, for example, and stores the readobject data at successive addresses in a working area of the main memory76.

[0199] In step S303, the destruction determining means 332 rewrites thevertex data of the object data based on present movement information. Instep S304, the destruction determining means 332 obtains positionalinformation from the vertex data.

[0200] In step S305, the destruction determining means 332 conducts asearch for a hit on the background object. Specifically, in step S306,the destruction determining means 332 determines whether there is adamage applying object hitting the background object or not, from thepositional information of the background object and all positionalinformation, obtained in advance, of damage applying objects.

[0201] If there is a damage applying object hitting the backgroundobject, then control goes to step S307 in which the destructiondetermining means 332 determines whether the background object needs tobe destroyed in display or not based on whether the damage applyingobject hitting the background object is bullets or shells 218 or whetherthe damage applying object hitting the background object is heavier thanthe background object or not.

[0202] If the background object needs to be destroyed in display, thencontrol goes to step S308 in which the destruction determining means 332determines whether the background object is being destroyed in displayor not based on whether the destruction flag in the jth record in thebackground object information table is set to “1” or not.

[0203] If the background object is not being destroyed in display, thencontrol goes to step S309 in which the destruction determining means 332determines whether the background object is in accordance with the hitattribute method or not based on whether the method selection flag inthe jth record in the background object information table is set to “1”or not as shown in FIG. 21.

[0204] If the background object is in accordance with the hit attributemethod, then control goes to step S310 in which the destructiondetermining means 332 calculates a present hit attribute based on thepositional information of the damage applying object and the positionalinformation of the background object, and determines a valuecorresponding to the calculated attribute (attribute value). Thedetermined attribute value is stored in the jth record in the backgroundobject information table.

[0205] After step S310 or if the background object is in accordance withthe random number method rather than the hit attribute method in stepS309, then control goes to step S311 in which the destructiondetermining means 332 sets the destruction flag in the jth record in thebackground object information table to “1”.

[0206] After step S311, or if the background object is being destroyedin display in step S308, or if the background object does not need to bedestroyed in display in step S307, or if there is no damage applyingobject hitting the background object in step S306, then control goes tostep S312 in which the destruction determining means 332 increments thevalue of the index register j by “+1”.

[0207] In step S313, the destruction determining means 332 determineswhether the destruction of all background objects has been determined ornot based on whether or not the value of the index register j is equalto or greater than the number N of background objects.

[0208] If the destruction of all background objects has not beendetermined, then control returns to step S302 to determine thedestruction of a next background object. If the destruction of allbackground objects has been determined, then the processing sequence ofthe destruction determining means 332 is put to an end.

[0209] Control then returns to the main routine shown in FIG. 19. Instep S103 shown in FIG. 19, the background object processing means 334performs its processing sequence. The processing sequence of thebackground object processing means 334 will be described below withreference to FIG. 23. In step S401 shown in FIG. 23, the backgroundobject processing means 334 stores an initial value “0” in the indexregister j used to retrieve a background object, thus initializing theindex register j.

[0210] In step S402, the background object processing means 334 readsobject data of a jth background object from the object data file ofbackground objects stored in the working area of the main memory 76.

[0211] In step S403, the background object processing means 334determines whether the jth background object needs to be destroyed indisplay or not based on whether the destruction flag in the jth recordin the background object information table is set to “1” or not.

[0212] If the jth background object needs to be destroyed in display,then control goes to step S404 in which the background object processingmeans 334 reads the count in the jth record, and stores the read countin an index register k. In step S405, the background object processingmeans 334 determines whether the background object is to be destroyed indisplay for the first time or not based on whether the value of theindex register k is “0” or not.

[0213] If the background object is to be destroyed in display for thefirst time, then control goes to step S406 in which the backgroundobject processing means 334 whether the background object is inaccordance with the random number method or not. If the backgroundobject is in accordance with the random number method, then control goesto step S407 in which the background object processing means 334generates a random number. In step S408, the display form selectingmeans 340 reads a destruction display process data file depending on thetype of the background object and the random number, and stores the readdestruction display process data file as a jth destruction displayprocess data file in the working area of the main memory 76.

[0214] If the background object is in accordance with the hit attributemethod rather than the random number method, then control goes to stepS409 in which the display form selecting means 340 reads a destructiondisplay process data file depending on the type of the background objectand the attribute value, and stores the read destruction display processdata file as a jth destruction display process data file in the workingarea of the main memory 76.

[0215] After step S408 or S409 or if the background object is to bedestroyed in display not for the first time, then control goes to stepS410 in which the background object processing means 334 rewrites thevertex data of the jth object data based on destruction display processdata in a kth record in the jth destruction display process data file.

[0216] In step S411, the destruction rendering means 342 performs arendering process based on the jth object data to render and store athree-dimensional image of the jth background object, which is beingdestroyed, in the frame buffer 84. If the background object is thebuilding 220, then it is rendered in a destroyed sequence of“collapsing” or “being tilted” and stored in the frame buffer 84. If thebackground object is the road 222, then it is rendered in a destroyedsequence of “being concaved”. If the background object is the railroad224, then it is rendered in a destroyed sequence of “being bent” or“being cut off”. At this time, an object of black smokes or flames mayalso be rendered.

[0217] In step S412, the background object processing means 334increments the value of the index register k by “+1”. In step S413 shownin FIG. 24, the background object processing means 334 determineswhether the rendering process for destroying the background object indisplay for the last time is finished or not, or more accurately,determines whether a three-dimensional image based on the destructiondisplay process data stored in the final record in the destructiondisplay process data file of the background object has been rendered andstored in the frame buffer 84 or not based on whether or not the valueof the index register k is equal to or greater than the number ofrecords in the jth destruction display process data file.

[0218] If the rendering process for destroying the background object indisplay for the last time is finished, then control goes to step S414 inwhich the background object processing means 334 sets the count in thejth record in the background object information table to “0”. In stepS415, the background object processing means 334 resets the destructionflag in the jth record to “0”.

[0219] If the rendering process for destroying the background object indisplay for the last time is not finished, then control goes to stepS416 in which the background object processing means 334 registers thevalue of the index register k as the count in the jth record in thebackground object information table.

[0220] If the jth background object does not need to be destroyed indisplay, then control goes to step S417 in which the background objectprocessing means 334 performs a rendering process based on the jthobject data, with the vertex data rewritten, stored in the working areaof the main memory 76 to render and store a three-dimensional image ofthe jth background object in the frame buffer 84.

[0221] After step S415 or S416 shown in FIG. 24 or after step S417 shownin FIG. 23, control goes to step S418 shown in FIG. 24 in which thebackground object processing means 334 increments the value of the indexregister j by “+1”. Thereafter, in step S419, the background objectprocessing means 334 determines whether the processing of all backgroundobjects has been finished or not based on whether or not the value ofthe index register j is equal to or greater than the number N ofbackground objects.

[0222] If the processing of all background objects has not beenfinished, then control goes back to step S402 shown in FIG. 23 toperform a rendering process for destroying a next background object indisplay.

[0223] If the processing of all background objects has been finished,then the processing sequence of the background object processing means334 is put to an end.

[0224] Control then returns to the main routine shown in FIG. 19. Instep S104, the image displaying means 336 outputs image data renderedand stored in the frame buffer 84 to the display monitor 18 to display acorresponding image on the display screen 200 of the display monitor 18.In this manner, the display screen 200 of the display monitor 18displays three-dimensional images of various damage applying objects andbackground objects, and a three-dimensional image of a background objectthat is being destroyed by collision with a damage applying object.

[0225] In step S105, the destruction displaying means 304 determineswhether there is a program end request (gameover or power supplyturn-off) with respect to the destruction displaying means 304 or not.If there is no program end request, then control returns to step S101,and repeats the processing from step S101.

[0226] If there is a program end request in step S105, then theprocessing sequence of the destruction displaying means 304 is ended.

[0227] In the entertainment system 10 according to the above embodiment,as described above, it is determined whether a background object whichis being displayed on the display monitor is destroyed or not based onpositional information of the displayed background object and positionalinformation of a damage applying object, and a process of destroying thebackground object is displayed if the background object has beendetermined as being destroyed.

[0228] For example, when the damage applying object hits the backgroundobject, the background object is determined as being destroyed, and isdisplayed in a destroyed sequence. For example, when the robot 202 hitsthe building 220, the building 220 is displayed as collapsing, and whenthe heavy robot 202 is landed on the ground, the road 222 is displayedas being concaved.

[0229] Therefore, even if the primary goal to be achieved in a videogame is for the user or game player to control the principal characterto beat the opponent such as the monster 212, the background displayedin the video game can be changed depending on details of the battlebetween the principal character and the opponent, resulting in realisticimages displayed in the video game. The user can therefore experiencesimulated combats or battles between the principal character and theopponent, and remains interested in the video game.

[0230] In the above embodiment, a form of destruction is selecteddepending on the type of a background object to be destroyed, and thebackground object is rendered in a destroyed sequence and stored in theframe buffer 84 according to the rules of the selected form ofdestruction. Therefore, the destroyed sequence is displayed depending onthe type of the background object. For example, if the background objectis the building 220, then it is displayed in a destroyed sequence of“collapsing” or “being tilted”. If the background object is the road222, then it is displayed in a destroyed sequence of “being concaved”.If the background object is the railroad 224, then it is displayed in adestroyed sequence of “being bent” or “being cut off”. In the destroyedsequence of the building 220, it may be displayed as collapsing whileproducing black smokes or flames.

[0231] In the entertainment system 10, the display monitor 18 displaysthe frame 204 for changing the viewpoint as seen from the user, and thesight 206 movable in the frame 204 depending on the control inputentered by the user. When the sight 206 contacts the frame 204, theviewpoint is changed in the direction that is indicated by the positionwhere the sight 206 contacts the frame 204.

[0232] For example, if the frame 204 is of a circular shape, then whenthe sight 206 contacts a right region (in the direction of 3 PM) of thecircular frame 204, the viewpoint is changed to the right, and when thesight 206 contacts an upper right region (in the direction of 2 PM) ofthe circular frame 204, the viewpoint is changed upward to the right.

[0233] Therefore, it is possible to change the viewpoint in thedirection in which the sight 206 moves. The user can independentlycontrol the robot 202 and set the sight 206 while changing theviewpoint, and hence can easily make control actions in video games suchas shooting games and combat games.

[0234] In the above embodiment, the display monitor 18 displays the icon214 indicative of a position where another object such as the monster212 as a target will appear, in contact with the frame 204. Thedisplayed icon 214 allows the user to have an instantaneous recognitionof the direction in and the height at which the opponent such as themonster 212 will appear. When the user brings the sight 206 into contactwith the region of the frame 204 where the icon 214 is displayed, theviewpoint is changed in the direction of the opponent, allowing the userto set the sight 206 quickly on the opponent.

[0235] When the viewpoint is changed, it moves at a speed depending onthe tilted interval K of the right joystick 46. Thus, the user can movethe viewpoint slowly or quickly depending on the situation in which theprincipal character is placed, e.g., when the principal charactersearches the surrounding area or in case of emergency, e.g., when amonster appears. With the viewpoint being thus movable, the user findsthemselves more easily absorbed in the video game, and remainsinterested in the video game for a long period of time.

[0236] In the entertainment system 10, the destruction displaying means304 and the viewpoint changing means 302 are combined with each other toallow the user to play shooting games, combat games, etc., for example,with good controllability while experiencing simulated field battles orcombats with realistically displayed destruction scenes.

[0237] With the entertainment system and recording medium according tothe present invention, even if the primary goal to be achieved in avideo game is for the user or game player to control the principalcharacter to beat the opponent, the background displayed in the videogame can be changed depending on details of the battle between theprincipal character and the opponent, resulting in realistic imagesdisplayed in the video game.

[0238] With the entertainment system and recording medium according tothe present invention, furthermore, it is possible to change theviewpoint in the direction in which the sight moves. The user canindependently control a displayed robot and set the sight while changingthe viewpoint, and hence can easily make control actions in video gamessuch as shooting games and combat games.

[0239] Although a certain preferred embodiment of the present inventionhas been shown and described in detail, it should be understood thatvarious changes and modifications may be made therein without departingfrom the scope of the appended claims.

What is claimed is:
 1. An entertainment system comprising: anentertainment apparatus for executing various programs; at least onemanual controller for entering control requests from the user into saidentertainment apparatus; a display unit for displaying images outputtedfrom said entertainment apparatus; and destruction displaying means fordetermining whether a background object which is being displayed on thedisplay unit is destroyed or not based on positional information of thedisplayed background object and positional information of a damageapplying object, and displaying the background object in a destroyedsequence if the background object has been determined as beingdestroyed.
 2. An entertainment system according to claim 1 , whereinsaid destruction displaying means comprises: determining means fordetermining whether said background object is to be destroyed or notbased on the positional information of said background object and thepositional information of said damage applying object; display formselecting means for selecting a form of destruction depending on thetype of the background object to be destroyed; and rendering means fordisplaying said background object in a destroyed sequence according torules of the selected form of destruction.
 3. An entertainment systemaccording to claim 2 , wherein said determining means comprises: meansfor destroying said background object in display if the positionalinformation of said damage applying object is included in the positionalinformation of said background object.
 4. An entertainment systemcomprising: an entertainment apparatus for executing various programs;at least one manual controller for entering control requests from theuser into said entertainment apparatus; a display unit for displayingimages outputted from said entertainment apparatus; and viewpointchanging means for displaying, on said display unit, a frame to change aviewpoint and a sight movable in said frame depending on a control inputentered from said manual controller by the user, and changing theviewpoint in the direction depending on the control input entered by theuser when said sight approaches said frame.
 5. An entertainment systemaccording to claim 4 , wherein said viewpoint changing means comprises:means for changing said viewpoint in display at a speed depending on thecontrol input entered by the user.
 6. An entertainment system accordingto claim 4 , wherein said viewpoint changing means comprises: appearancedirection displaying means for displaying an indicia, indicative of adirection in which a principal object will appear, closely to saidframe.
 7. An entertainment apparatus for connection to a manualcontroller for outputting a control request from the user, and a displayunit for displaying images, comprising: destruction displaying means fordetermining whether a background object which is being displayed on thedisplay unit is destroyed or not based on positional information of thedisplayed background object and positional information of a damageapplying object, and displaying the background object in a destroyedsequence if the background object has been determined as beingdestroyed.
 8. An entertainment apparatus for connection to a manualcontroller for outputting a control request from the user, and a displayunit for displaying images, comprising: viewpoint changing means fordisplaying, on said display unit, a frame to change a viewpoint and asight movable in said frame depending on a control input entered fromsaid manual controller by the user, and changing the viewpoint in thedirection depending on the control input entered by the user when saidsight approaches said frame.
 9. A recording medium storing a program anddata for use in an entertainment system having an entertainmentapparatus for executing various programs, at least one manual controllerfor entering control requests from the user into said entertainmentapparatus, and a display unit for displaying images outputted from saidentertainment apparatus, said program comprising the steps of:determining whether a background object which is being displayed on thedisplay unit is destroyed or not based on positional information of thedisplayed background object and positional information of a damageapplying object, and displaying the background object in a destroyedsequence if the background object has been determined as beingdestroyed.
 10. A recording medium according to claim 9 , wherein saidsteps comprise the steps of: determining whether said background objectis to be destroyed or not based on the positional information of saidbackground object and the positional information of said damage applyingobject; selecting a form of destruction depending on the type of thebackground object to be destroyed; and displaying said background objectin a destroyed sequence according to rules of the selected form ofdestruction.
 11. A recording medium according to claim 10 , wherein saidstep of determining whether said background object is to be destroyed ornot comprises the step of: destroying said background object in displayif the positional information of said damage applying object is includedin the positional information of said background object.
 12. A recordingmedium storing a program and data for use in an entertainment systemhaving an entertainment apparatus for executing various programs, atleast one manual controller for entering control requests from the userinto said entertainment apparatus, and a display unit for displayingimages outputted from said entertainment apparatus, said programcomprising the steps of: displaying, on said display unit, a frame tochange a viewpoint and a sight movable in said frame depending on acontrol input entered from said manual controller by the user, andchanging the viewpoint in the direction depending on the control inputentered by the user when said sight approaches said frame.
 13. Arecording medium according to claim 12 , wherein said steps comprise thestep of: changing said viewpoint in display at a speed depending on thecontrol input entered by the user.
 14. A recording medium according toclaim 12 , wherein said steps comprise the step of: displaying anindicia, indicative of a direction in which a principal object willappear, closely to said frame.
 15. A program readable and executable bya computer, for use in an entertainment system having an entertainmentapparatus for executing various programs, at least one manual controllerfor entering control requests from the user into said entertainmentapparatus, and a display unit for displaying images outputted from saidentertainment apparatus, said program comprising the steps of:determining whether a background object which is being displayed on thedisplay unit is destroyed or not based on positional information of thedisplayed background object and positional information of a damageapplying object, and displaying the background object in a destroyedsequence if the background object has been determined as beingdestroyed.
 16. A program readable and executable by a computer, for usein an entertainment system having an entertainment apparatus forexecuting various programs, at least one manual controller for enteringcontrol requests from the user into said entertainment apparatus, and adisplay unit for displaying images outputted from said entertainmentapparatus, said program comprising the steps of: displaying, on saiddisplay unit, a frame to change a viewpoint and a sight movable in saidframe depending on a control input entered from said manual controllerby the user, and changing the viewpoint in the direction depending onthe control input entered by the user when said sight approaches saidframe.